#define kContrastEngineSubType 'cont' /* kBitDepthEngineSubType = 'bitd', // Not used */
#define kAVPortType 'avdp' /* subtypes are defined in each port's public .h file */
#define kAVUtilityType 'avuc'
#define kAVBackChannelSubType 'avbc'
#define kAVCommunicationType 'avcm'
#define kAVDialogType 'avdg'
/* PortComponent subtypes are up to the port and display manager does not use the subtype
to find port components. Instead, display manager uses an internal cache to search for portcompoennts.
It turns out to be useful to have a unique subtype so that engines can see if they should apply themselves to
a particular port component.
PortKinds are the "class" of port. When a port is registered with display manager (creating a display ID), the
caller of DMNewDisplayIDByPortComponent passes a portKind. Ports of this type are returned by
DMNewDevicePortList.
PortKinds are NOT subtypes of components
PortKinds ARE used to register and find port components with Display Manager. Here are the basic port kinds:
Video displays are distinct from video out because there are some video out ports that are not actaully displays.
if EZAV is looking to configure displays, it needs to look for kAVVideoDisplayPortKind not kAVVideoOutPortKind.
*/
#define kAVVideoDisplayPortKind 'pkdo' /* Video Display (CRT or panel display) */
#define kAVVideoOutPortKind 'pkvo' /* Video out port (camera output). */
#define kAVVideoInPortKind 'pkvi' /* Video in port (camera input) */
#define kAVSoundOutPortKind 'pkso' /* Sound out port (speaker or speaker jack) */
#define kAVSoundInPortKind 'pksi' /* Sound in port (microphone or microphone jack) */
#define kAVDeviceType 'avdc' /* Device Component subtypes are up to the manufacturor since each device may contain multiple function types (eg telecaster) */
#define kAVPortGetAVDeviceFidelitySelect 256 /* Port Standard Component selectors */
#define kAVPortGetWiggleSelect 257
#define kAVPortSetWiggleSelect 258
#define kAVPortGetNameSelect 259
#define kAVPortGetGraphicInfoSelect 260
#define kAVPortSetActiveSelect 261
#define kAVPortGetActiveSelect 262
#define kAVPortUnsed1Select 263 /* Selector removed as part of API change. We don't want to mess up the following selectors, so we put in this spacer (ie kPadSelector). */
#define kAVPortGetAVIDSelect 264
#define kAVPortSetAVIDSelect 265
#define kAVPortSetDeviceAVIDSelect 266 /* For registrar to set device (instead of hitting global directly) -- should only be called once */
#define kAVPortGetDeviceAVIDSelect 267 /* Called by display mgr for generic ports */
#define kAVPortGetPowerStateSelect 268
#define kAVPortSetPowerStateSelect 269
#define kAVPortGetMakeAndModelSelect 270 /* Get Make and model information */
#define kAVPortGetInterfaceSignatureSelect 271 /* To determine what VideoPort-specific calls can be made */
#define kAVPortReserved3Select 272 /* Reserved */
#define kAVPortGetManufactureInfoSelect 273 /* Get more Make and model information */
/* ============================= */
/* Device Component Standard Component selectors */